#ifndef lecture_dossier_h
#define lecture_dossier_h 
#define READ 2
#define WRITE 1

struct fichier_partage{
  
  char *nom_fichier;
  unsigned long taille_fichier;
  unsigned long taille_piece;
  char *cle_fichier;
  unsigned char *buffermap;
  int taille_buffermap;
  struct fichier_partage *next;
  
};

struct file{

  struct fichier_partage *tete;
  struct fichier_partage *queue;
  
};

struct file *liste_fichier(char *dossier_donnees, int taille_piece);

struct file *creer_file();

int file_vide(struct file *f);

void enfiler(char * nom, unsigned long taille,unsigned long taille_piece, char * cle,unsigned char *buffermap, int taille_buffermap, struct file *f);

struct fichier_partage *defiler(struct file *f);

void afficher_file(struct file *f);

int creer_file_dl(struct fichier_partage *fichier, char *dossier_config);

struct file * lire_file_dl(char *dossier_config);

int modifie_buffermap(struct fichier_partage*fichier, char *dossier_config,int mode);

int supprime_file_dl(struct fichier_partage * fichier, char *dossier_config);

#endif
